Technical Field
The present disclosure relates to storage systems and, more specifically, to quantifying logical space trapped in an extent store of a storage system.
Background Information
A plurality of storage systems may be interconnected as a cluster and configured to provide storage service relating to the organization of storage containers stored on storage devices coupled to the systems. The storage system cluster may be further configured to operate according to a client/server model of information delivery to thereby allow one or more clients (hosts) to access the storage containers. The storage devices may be embodied as solid-state drives (SSDs), such as flash storage devices, whereas the storage containers may be embodied as files or logical units (LUNs). Each storage container may be implemented as a set of data structures, such as data blocks that store data for the storage container and metadata blocks that describe the data of the storage container. For example, the metadata may describe, e.g., identify, locations of the data on storage devices in the cluster. The storage systems may maintain the metadata describing the locations of the storage container data throughout the cluster in a data structure.
Assume an input/output (I/O) request, such as a write request having new data, is issued by a host to change existing data of a storage container, such as a LUN. For example, the new data may overlap (and thus overwrite) a portion of the existing data on the storage devices. When processing the request, the storage system may create new metadata identifying the location of the new data and insert the new metadata into the data structure, e.g., as a new metadata entry. The new metadata entry may partially overlap with an existing metadata entry identifying the location of the existing data on the storage devices. The existing metadata entry may be adjusted to cover any non-overlapping portions of the existing data without performing any costly read-modify-write operations that, e.g., update the existing data with the new data after reading the portion of the existing data. However, the partially overlapping metadata entry may trap unused (unmapped) logical storage space of the storage devices.